
package com.insigma.business.qrcode.common._provider;



import com.insigma.business.qrcode.common.dto.CommonAdminAreaDTO;
import com.insigma.business.qrcode.common.dto.CommonAdminAreaSearchRequest;
import com.insigma.business.qrcode.common.template.BasePagingResponse;
import com.insigma.business.qrcode.common.vo.BaseDeleteRequest;
import com.insigma.business.qrcode.common.vo.BaseResponse;
import com.insigma.business.qrcode.soldier.dto.SoldierBasicInfoDTO;
import com.insigma.business.qrcode.soldier.request.BaseGetRequest;

import java.util.List;


public interface CommonAdminAreaProvider {

    
    BaseResponse<CommonAdminAreaDTO> findAdminAreaOfEmployee(String userId);

    
    BaseResponse<List<CommonAdminAreaDTO>> findSubAreaList(String adminAreaCode);


    
    BaseResponse<List<CommonAdminAreaDTO>> findQGSubAreaList(String adminAreaCode);

    

   
    BaseResponse<CommonAdminAreaDTO> getCommonAdminArea(final BaseGetRequest baseGetRequest);



    
    BaseResponse<Integer> deleteCommonAdminArea(final BaseDeleteRequest deleteRequest);


    BaseResponse<String> analyseAreaCodeByBasicInfo(SoldierBasicInfoDTO dto);

    
    String analyseAreaCodeByBasicInfo(String address);

    
    BaseResponse<String> analyseAreaCodeByBasicInfoForOther(String address);

    @Deprecated
    void testConvertToArea();

    
    void updateCommonAllFullValuePath(String code);

    
    @Deprecated
    void testCleanSetSoldier();

    
    @Deprecated
    BaseResponse<String> convertAndSetNewResidentCode(String areaCode);

    
    BaseResponse<String> refreshToOriginAdminAreaCode(String adminAreaCode);
    BasePagingResponse<List<CommonAdminAreaDTO>> searchCommonAdminArea(final CommonAdminAreaSearchRequest commonAdminAreaSearchRequest);

}
